查看原文
其他

周小结丨仿真系统

Kindy 提升之路 2022-08-08

前言


正如过往一再强调:


提升之路不是投资这里只记录我自己成长过程的经验和教训,包括学习、生活、投资和公益等


投资记录和反思只是其中一小部分而已。如之前误关注了,现在取消关注来得及,免得后续浪费时间,变成沉没成本了。


过去一周,最大收获是努力了将近半年的资产资金管理的仿真系统,终于通过评审,准备上线试运行了。


在脱敏的情况下,我分享一些经验和教训,也算是自己的一些反思和沉淀吧。



背景


去年底我们团队接到个任务:


总办希望有个决策体系,让他们在做决策时,量化地展现不同决策对不同关键指标的影响。


接到任务后,对各个关键指标尝试拆解联动关系,包括定价对量级的影响,期数对回款的影响,不同合作模式对流动性的影响……


但模拟到最后,有个地方没法通过简单的数据模拟出来,那就是资产和资金的匹配效果,不能简单地用数据分析方法模拟。


最大的问题是这个不是简单线性关系,且是多目标规划。



暴力破解


基于对过往数据的分析,我们发现资产的关键特征在某些特定时间都是比较稳定的。那这就存在了通过离线数据模拟线上的可能性。


比如某网约车平台,发现每个工作日晚上十点,南山科技园特定区域突然下单量就是其他时段的几十倍,那他们就可以根据这个规律,提前安排调度。


同理,我们也提前一天给资产根据特征分组,第二天每个最小颗粒来时,直接指定最优的资金。


那什么是最优呢?我不学无术,一开始提出的暴力破解方案,就是把所有可能性都试一遍。




举个更直观的例子:假如我们从南山要去香港机场,可以有很多方式。现在要选一种费用最低,用时最短的方案。



我的解决方案是:把所有的方式,所有的时段,分不同人数的方案,甚至不同天气都试一遍,不就知道答案吗?


从理论上是可行的,但实操发现完全行不通。最大的阻碍是算力问题


如果只是去香港,可知的方式就那么多,即便衍生很多,还是有可能全部试一遍的。


但资产和资金的数量等级就不一样,再考虑幂的影响,直接就想放弃了,当时有局外的小伙伴说,估计天河也不够用




最小费用最大流


这时,ACM(国际大学生程序设计竞赛)的伙伴X出场了,他建议基于我们模拟的目标是特定量级的利润最高,可以尝试用最小费用最大流来解决。


最小费用最大流问题:经济学和管理学中的一类典型问题。


在一个网络中每段路径都有“容量”和“费用”两个限制的条件下,此类问题的研究试图寻找出:流量从A到B,如何选择路径、分配经过路径的流量,可以在流量最大的前提下,达到所用的费用最小的要求。



比如上图,边上的黑色数字是容量,括号是里是费用。假如有一批货物3份从S到T,应该怎么走才是最小费用呢?


有多种方式可以达到最大流3:


① S->3->T (2) + S->3->2->T (1)

这种流法的费用是(3×2+4×2)+(3×1+1×1+1×1)=  14 + 5 = 19


② S->3->T (2) + S->1->2->T (1)

这种流法的费用(3×2+4×2)+(1×1+2×1+1×1)= 14 + 4= 18


后者(18)比前者(19)的费用更低。事实上,后者正是这个网络的最小费用最大流。


介绍完毕,因为我是算法文盲,再说下去就贻笑大方了。


这个终于解决了算力问题了。当然实际用时,我们已经根据这个改了好多衍生版本。但,接下来又遇到的是限制条件问题



剪枝


在现实中,会遇到很多限制性条件,意味着不可能完全达到理论的最优




在跟业务团队很多轮沟通后,我们确认了几十个限制因子及梳理的剪枝方案。



后记


经过不断的迭代,在上周我们的离线数据终于出来,目前看比较理想。


首先,解决了各种条件下,各种量化结果的测算,这个十分有利于后续的分析决策系统的开发。


其次,相比线上已有的模型,同约束条件下的利润增幅还挺诱人。当然这个得线上实操才能最终确认。


感谢团队的小伙伴,终于完成了第一步,也让我这个南郭先生还能混在团队里继续滥竽充数



拓展阅读


周小结丨习惯、爱好、追剧和生活

周小结丨体检和知识管理

周小结丨费曼学习法


关于本号


记录自我提升之路,有缘相遇,一路同行。
声明:本公众号原创或转载的文章,仅用于个人学习,不构成投资建议。市场有风险,投资需谨慎!

E大投资研究进群>>
本号文章目录检索>>

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存